
export const EMPTY_OBJECT = {};

// https://cesium.com/learn/cesiumjs/ref-doc/Viewer.html#.ConstructorOptions
export const defaultViewerOptions = {
  animation: false,
  baseLayerPicker: false,
  fullscreenButton: false,
  vrButton: false,
  geocoder: false,
  homeButton: false,
  infoBox: false,
  sceneModePicker: false,
  selectionIndicator: false,
  timeline: false,
  navigationHelpButton: false,
  navigationInstructionsInitiallyVisible: false,
  scene3DOnly: false,
  shouldAnimate: true,
  // clockViewModel: new Cesium.ClockViewModel(clock), // https://cesium.com/learn/cesiumjs/ref-doc/Clock.html
  // selectedImageryProviderViewModel: [],
  // imageryProviderViewModels: [],
  // selectedTerrainProviderViewModel: [],
  // terrainProviderViewModels: [],

  // imageryProvider: createWorldImagery(),
  // terrainProvider: new EllipsoidTerrainProvider(),  // 注释时相当于使用默认地形，解开注释相当于使用全球地形
  // or
  // imagery: { type: 'arcgisImagery', options: { brightness: 1, show: true } },
  /**
   * terrain:
   * default: Cesium.createWorldTerrain(options)
   * ellipsoid: Cesium.EllipsoidTerrainProvider(options)
   */
  // terrain: { type: 'default', options: { requestVertexNormals: true, requestWaterMask: true } },

  // skyBox: false,
  // skyAtmosphere: false,

  fullscreenElement: document.body,
  useDefaultRenderLoop: true,

  // targetFrameRate: Number,
  showRenderLoopErrors: true,

  useBrowserRecommendedResolution: true,
  automaticallyTrackDataSourceClocks: true,

  contextOptions: {
    webgl: {
      alpha: true
    }
  },

  // sceneMode: Cesium.SceneMode.SCENE3D,
  // mapProjection: new Cesium.GeographicProjection(),

  // globe: new Globe(mapProjection.ellipsoid), //Globe | false
  orderIndependentTranslucency: true,

  // creditContainer: Element | String
  // creditViewport: Element | String

  // dataSources: new DataSourceCollection(),

  shadows: true,
  // terrainShadows: ShadowMode.RECEIVE_ONLY,

  // mapMode2D: MapMode2D.INFINITE_SCROLL,

  projectionPicker: false,
  requestRenderMode: false,

  maximumRenderTimeChange: 0,
}

export const defaultViewerDefinition = {
  id: "",
  name: "viewer",
  title: "viewer",
  navigation: true,
  depthTestAgainstTerrain: true,
  hideLayers: false,
  secene: {
    id: "",
    name: "viewer",
  }
}
